The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the inventors hereof, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted to be prior art against the present disclosure.
In the display system of an electronic device, display content from a video source, even a digital source, is usually imperfect. To improve display quality, display parameters, including brightness, saturation, and hue can be adjusted. A family of color spaces used as a part of the color image pipeline in video and digital photography systems, known as the YCbCr color space, is used for brightness, saturation, and hue controls. Y denotes the luma component and Cb and Cr are the blue-difference and red-difference chroma components, respectively.
For example, hue and saturation controls of CbCr processing can be used in most television settings. The hue parameter of a pixel may often determine the color of the pixel, and the chroma parameter may determine the saturation or vividness of the color. A value of 128 is subtracted from the value of Cb and Cr to position the range about zero. The hue control can be implemented by mixing the Cb and Cr data:Cb′=Cb cos θ+Cr sin θCr′=Cr cos θ−Cb sin θwhere θ is the desired hue angle. An example 8-bit hue adjustment range is −30° to +30°. The saturation control can be implemented by multiplying both Cb and Cr by a constant. An example 8-bit saturation adjustment range is 0-1.992. Finally, the value of 128 can be added back to both Cb and Cr.
Some displays also use separate hue and saturation controls for each of the red, green, blue, cyan, yellow, and magenta colors. This can facilitate tuning the image at production time to better match the display's characteristics. The adjustment of the display parameters such as the hue, saturation or brightness, can be complicated, and a user usually tries different combination of parameters to seek a satisfactory setting based on empirical data. Thus, the parameter tuning process can be tedious and inefficient.